/* 
* sepprfrc.h - This file is a part of the sep-library 
*
* Copyright (C) 2008 Jesper Schmidt Hansen 
* 
* License: GPL - see COPYING for copying conditions.
* There is ABSOLUTELY NO WARRANTY, not even for MERCHANTIBILITY or
* FITNESS FOR A PARTICULAR PURPOSE.
*
* Contact: schmidt@zigzak.net
*/

#ifndef __SEPCOULOMB_H__
#define __SEPCOULOMB_H__

#include <stdlib.h>
#include <string.h>
#include "sepdef.h"
#include "sepstrct.h"
#include "separray.h"
#include "sepmisc.h"
#include "sepprfrc.h"

#ifdef OMP
#include <omp.h>
#endif


void sep_coulomb_sf(seppart *ptr, double cf, sepsys *sys, sepret *retval, const unsigned opt);

void sep_coulomb_sf_brute(seppart *ptr,  double cf, sepsys *sys,sepret *retval, const int opt);
void sep_coulomb_sf_neighb(seppart *ptr, double cf, sepsys *sys, sepret *retval);
void sep_coulomb_sf_neighb_omp(seppart *ptr, double cf, sepsys *sys, sepret *retval);

void sep_coulomb_wolf(seppart *ptr, double alpha, double cf, sepsys *sys, sepret *retval, const unsigned opt);

void sep_coulomb_wolf_brute(seppart *ptr, double alpha, double rcf, sepsys *sys, sepret *ret, unsigned opt);
void sep_coulomb_wolf_neighb(seppart *ptr, double alpha, double rcf, sep3D *sys, sepret *retval);

#endif
